Christian Tismer [Tue, 21 Jun 2022 08:22:04 +0000 (10:22 +0200)]
PyEnum: make forgiving duplicates work with Python 3.11
There was a silent change in PyEnums that turns Enum attributes
into properties. This does not harm the Python interface but
needed some change in the duplication emulation.
Furthermore, new internal enums are created with an underscore name.
The meta class was changed from EnumMeta to EnumType.
[ChangeLog][shiboken6] The new Python Enums are now compatible with Python 3.11
Christian Tismer [Tue, 21 Jun 2022 08:22:04 +0000 (10:22 +0200)]
Shiboken: Fix the oldest shiboken bug ever which shows up on Python 3.11
b7df2f1c0 "Fix signal initializer.", 18. May 2010 at 00:55
There was a `PySequence_Check` in the evaluation of some signature
function parameter processing, which should have been `PyTuple_Check`.
Since the new PyEnums are also sequences, the new optimization in
Python 3.11 changed the parameter handling in a correct way and
replaced the argument tuple by a direct single argument of an enum
type. And that is also a sequence ...
There are probably still dormant issues like this in the codebase
which gives reason to submit a task that checks all Python interface
functions for correctness.
libshiboken: Fix crashes with static strings in Python 3.11
In Python 3.11, some strings come with a refcount above decimal 1000000000, apparently indicating that they are interned. Replace the
mechanism by PyUnicode_InternFromString().
Task-number: PYSIDE-1960 Pick-to: 6.3 6.2 5.15
Change-Id: I6436afee351f89da5814b5d6bc76970b1b508168 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com>
(cherry picked from commit a09a1db8391243e6bb290ee66bb6e3afbb114c61)
Gbp-Pq: Name libshiboken-Fix-crashes-with-static-strings-in-Python-3.11.patch
Dmitry Shachnev [Sun, 14 Nov 2021 18:08:50 +0000 (21:08 +0300)]
Find the build directory matching the current interpreter
This is needed to allow us to run tests with all supported Python versions.
Without this patch, the latest build directory will be always picked, no
matter what the current interpreter is.
Dmitry Shachnev [Sun, 1 Oct 2023 20:43:44 +0000 (21:43 +0100)]
pyside2 (5.15.10-4) unstable; urgency=medium
* Team upload.
* Build with LLVM 15 for now (closes: #1051886).
* Backport upstream patch to fix test failures with Python 3.11.5.
* Add a debian/clean file (closes: #1047480).